# 小数据池----缓冲机制（驻留机制）
# == 是判断两边的内容是否相等
# a = 10
# b = 10
# print(a == b)

# is 是判断两边的内存地址是否相同
# a = 10
# b = 10
# print(a is b)
# print(id(a))
# print(id(b))

# 小数据池的数字范围：-5到256
# a = -2*2
# b = -2*2
# print(a is b)

# 代码块：一个文件，一个函数，一个类，一个模块，终端中每一行都是一个代码块
# 支持：
# 数字：
#     在同一代码块下，只要内容相同就采用相同的内存地址（-5之后就不是了）
#     数字在做乘法的时候不能使用浮点数
#     数字在做乘法的时候范围-5 到 256
# 字符串：
#     在同一代码块下，只要内容相同就采用相同的内存地址
#     乘法的时候总长度不能超过20
#     乘法的时候有中文，特殊符号乘1或0
# 布尔值：
#     在同一代码块下，只要内容相同就采用相同的内存地址


# lst = [1, 2, 3, [5, 6, 7]]
# list1 = lst
# lst[-1].append(8)
# print(list1)
# print(lst)
#
# lst = [1, 2, 3, [5, 6, 7]]
# list1 = lst.copy()
# lst[1]=9
# print(lst)
# print(list1)

# lst = [1, 2, 3, [5, 6, 7, [2, 13]]]
# list1 = lst.copy()
# list1[1] = 5
# print(lst)
# print(list1)

# dic = {"alex": [1, 2, 3, [5, 6]]}
# dic1 = dic.copy()
# dic['alex'] = '56'
# print(dic)
# print(dic1)

# 深拷贝
# import copy
#
# lst = [1, 2, 3, [5, 6, 7]]
# lst1 = copy.deepcopy(lst)
# lst1[-1].append(8)
# print(lst)
# print(lst1)
